#ifndef CCONFIGURER_H
#define CCONFIGURER_H
#include<string>
#include "Plugins/initReader/SimpleIni.h"

namespace libcvos_vfr
{

#define INI_FILE_NAME "libcvos_vfr.ini"

	class cConfigurer
	{
	private:
		cConfigurer();
		cConfigurer(const cConfigurer&) = delete;
		cConfigurer& operator=(const cConfigurer&) = delete;

	public:
		~cConfigurer();

		static cConfigurer& get_instance()
		{
			static cConfigurer configurerObj;
			return configurerObj;
		}

		bool loadIniFile(const char* fileName);
		void createIniFile(const char* fileName);

		std::string get_section_value(const char* sectionName, const char* keyName);

		bool set_section_value(const char* sectionName, const char* keyName, std::string value);

	private:
		CSimpleIniA m_iniParser;

		bool m_bInit;

		std::string m_strIniFile;
	};

}
#endif // CCONFIGURER_H
